Topology discovery relates generally to obtaining information on devices (e.g., switches, repeaters, bridges, etc.) in a network and reporting the information in some form such as by display of a graphical representation of the network on a display device.
Certain prior art topology discovery methods utilize a process of flooding of topology information within the network. In such systems, each device transmits link state information to each of its neighbors and each of its neighbors, in turn, transmit the message to each of its own neighbors. In this manner, the entire network topology can eventually be computed at each device in the network. It will be readily seen that in such systems the use of a flooding technique can lead to infinite loops in the absence of some control. Further, even with such control, a large number of messages are generated, placing an undesirable load on the network. In addition, certain prior art topology discovery methods require some intervention, knowledge or processing power on the part of the xe2x80x9cneighborxe2x80x9d switches when topology information is advertised, resulting in adverse performance implications.
Additionally, in accordance with a preferred embodiment of the present invention, the identifying step b) includes each of the plurality of switches attached to the Ethernet LAN, each of the switches now referred to as a reporting switch, sending to the network management server an address of the reporting switch, an address for each of the ports in the reporting switch, and the list of the switches which each of the ports in the reporting switch sees.
There is also provided in accordance with a preferred embodiment of the present invention a method of determining an Ethernet LAN switch topology, the method including the steps of a) establishing a communications link between a network management server and a switch in an Ethernet LAN, thereby defining the switch as a root switch, b) identifying each of a plurality of switches attached to the Ethernet LAN, the each of the plurality of switches is identifiable by a MAC address, c) sending a packet to each of the plurality of switches, the each packet includes a unique fake MAC address, d) generating a mapping of each of the switches, the mapping including a list for each of the switches the fake MAC addresses that each of the switches sees, e) identifying in the mapping at least one leaf, a leaf being any of the switches that sees only one fake MAC address, f) maintaining in a topological mapping the at least one leaf, g) eliminating from the list each of the fake MAC address seen by the leaf, h) repeating steps e)-g) until all of the leaves are identified, and i) maintaining in the topological mapping at least one relationship between at least two leaves identified in at least two consecutive iterations of steps e)-g), the leaf identified in a first one of the iterations had been seen by the leaf identified in a subsequent one of the iterations.